﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace GoogleMaps
{
	/// <summary>
	/// The interfaced used to create marker classes that can be data bound to a map.
	/// </summary>
	public interface IGMarker
	{
		/// <summary>
		/// Gets or sets the latitude coordinate.
		/// </summary>
		Decimal Lat { get; set; }

		/// <summary>
		/// Gets or sets the longitude coordinate.
		/// </summary>
		Decimal Lng { get; set; }

		/// <summary>
		/// Gets or sets a flag indicating that the marker will be draggable by users. Markers set up to be dragged 
		/// require more resources to set up than markers that are clickable. Any marker that is draggable 
		/// is also clickable, bouncy and auto-pan enabled by default. The default value for this option 
		/// is false.
		/// </summary>
		[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Draggable")]
		Boolean Draggable { get; set; }

		/// <summary>
		/// Gets or sets the id of the icon that will be used when the maker is rendered.
		/// </summary>
		String IconId { get; set; }
	}
}
